Systems and methods for processing financial transactions are known in the prior art. Such systems include those used to process credit card transactions and debit card transactions. In systems of this type, transaction messages are transmitted between card activated terminal devices and remote computer systems which authorize the transactions. Such systems also keep an accounting of the amounts to be charged to a customer's account and credited to the account of a merchant or bank. Such card activated terminal devices include automated teller machines (“ATMs”), point of sale (“POS”) terminals and other financial transaction terminal devices. Terminal devices of these types can also be activated using stored value cards, which are sometimes referred to as “cash cards” or “smart cards”.
In transaction processing systems, transaction messages often must be passed between and processed in several different computer systems. Messages pass from the terminal devices to the remote systems that can authorize and track the transactions. Return messages pass from the remote systems back to the terminal devices.
The development of transaction processing systems has been complicated by the fact that different card activated terminal devices communicate using different messages and different message formats. Further complicating the development of such systems is that transaction messages must be passed and tracked through systems which have different types of hardware and software. This has necessarily limited the capabilities of transaction processing systems.
In recent years an effort has been made to develop standardized formats for financial transaction messages. For example, the International Organization for Standards has developed International Standard ISO 8583 entitled Financial Transaction Card Originated Messages—Interchange Message Specifications, 2nd Edition, 1993. This publication which is ISO Reference No. ISO 8583, 1993(E) is incorporated herein by reference. This ISO Standard provides a somewhat standardized typography for certain types of electronic financial transaction messages. However, while the Standard provides guidelines for the content of messages, it does not provide standardization for methods to be used in routing of such messages. As a result, the methodology for routing messages remains to be dealt with within the programming constraints of the particular type of hardware and software associated with a particular system.
A further complication with respect to the ISO 8583 Standard is that it does not specify a single message format. Rather, the Standard is flexible in that certain data fields which may be a part of a message, are not required to be present in all messages of the same type. Thus, some messages complying with the Standard may contain data that other messages of the same type also fully complying with the Standard, do not. The ISO Standard messages may also have so-called “private fields” in which those using the Standard may include data of their choosing.
The fields which make up the parts of a Standard compliant message may also have various lengths. Operators of systems and vendors of terminal devices each have implemented the ISO Standard for their systems or devices somewhat differently. As a result, while certain aspects of the messages may be the same, they are often substantially different. This poses challenges for system operators in processing transaction messages which comply with the ISO Standard.
A further complication in the processing of financial transaction messages is that there is a large installed base of terminal devices which do not comply with the ISO Standard. Such devices use their own unique message formats. As a result, it is necessary to translate messages from these devices into different formats for subsystems that use and ISO Standard format. Of course, these subsystems must include hardware and software for translating their messages into the message format of the particular terminal device when transaction messages pass from the subsystem to the device.
The need for financial transaction processing systems to translate messages from one format to another adds complexity and cost to such systems. A further drawback is that efforts to expand such systems so that they can communicate with additional types of terminal devices and other systems, require the development of software that can process and generate the various types of messages that are encountered. This usually results in a patchwork systems architecture which takes considerable time to develop and which cannot be readily expanded. All of these drawbacks add cost and complexity to financial transaction processing systems.
Thus, there exists a need for a financial transaction processing system and method that is more readily adaptable to communicating with a variety of other types of external systems and terminal devices, which can be more readily modified and upgraded to communicate with different types of external systems and terminal devices, and which can be more readily expanded to add new features and functions.